88 research outputs found

    Extending the usability of a dynamic tuning environment

    Get PDF
    Consultable des del TDXTítol obtingut de la portada digitalitzadaLa demanda de cómputo de altas prestaciones está en constante especialmente en el área científica ya que debe resolver problemas complejos. En general, el volumen de datos y las operaciones que deben realizarse sobre ellos requieren la utilización de sistemas muy potentes. Ello ha conducido a una mayor utilización del paradigma paralelo/distribuido. El proceso de optimización, denominado proceso de sintonización, es el proceso mediante el cual el comportamiento de la aplicación es adaptado y mejorado a travÎs de la modificación de sus parámetros críticos. El proceso de sintonización incluye varias fases. En primer lugar, durante una fase de monitorización se recoge información acerca del comportamiento de la aplicación. A continuación, dicha información es analizada para detectar problemas, deducir las causas y determinar soluciones. Finalmente, deben aplicarse los cambios necesarios en el código de la aplicación para resolver el problema y así mejorar su rendimiento. Afortunadamente, existen diferentes herramientas y aproximaciones para ayudar a los usuarios en las diferentes fases de optimización (monitorización, análisis o sintonización). Una de las herramientas disponibles es MATE (Monitoring, Analysis and Tuning Environment), un entorno para la sintonización dinámica y automática de aplicaciones paralelas. MATE, como su nombre indica, consiste en tres fases continuas e iterativas para adaptar el comportamiento de la aplicación de acuerdo al estado actual del ambiente de ejecución. El conocimiento que utiliza MATE para sintonizar los problemas de rendimiento es encapsulado en módulos de software denominados «tunlets». Cada tunlet provee la lógica necesaria para recolectar información de la ejecución de la aplicación, analizarla y decidir cuáles son las acciones de sintonización necesarias. El objetivo del presente trabajo es extender la usabilidad de MATE, cubriendo dos aspectos diferentes de MATE: - la mejora del rendimiento alcanzado por el análisis centralizado realizado por MATE, dado que representa un cuello de botella cuando la aplicación crece. En este trabajo presentamos una alternativa para lograr que MATE escale. - hacer de MATE una herramienta más amigable para facilitar la inclusión de conocimiento en MATE. De esta manera, se logra que MATE sea transparente. Respecto del primer aspecto, se propone una nueva aproximación para ejecutar el proceso de análisis, denominada Distributed-Hierarchical Collecting-Preprocessing Approach. Esta nueva aproximación se basa en la recolección distribuida de eventos lo que alivia la recolección centralizada realizada por MATE en su implementación original, así como también el preprocesamiento de las operaciones acumulativas o comparativas, siempre que sea posible. De esta manera, el Global Analyzer recibe de cada Collector-Preprocessor una estructura que condensa resumida sólo la información necesaria para la evaluación global de modelo de rendimiento, lo que reduce considerablemente la sobrecarga sufrida en la aproximación centralizada. De esta manera, MATE presenta propiedades de escalabilidad. Respecto del segundo aspecto, se propone una metodología, incluyendo un lenguaje y un traductor dise-ados y desarrollados ad hoc para insertar tunlets (conocimiento) en MATE de forma automática. Utilizando la metodología propuesta, el usuario no necesita entrar en detalles de implementación de MATE. Así, mediante la definición de un conjunto de abstracciones sobre la aplicación y sobre el modelo de rendimiento, las abstracciones pueden formalizarse en la especificación de un tunlet por medio del lenguaje propuesto. Tal especificación será automáticamente traducida en un tunlet listo para utilizarse en MATE. Escalabilidad y transparencia son dos cualidades necesarias en MATE para que sea una herramienta más útil y amigable para los usuarios. Las propuestas presentadas intentan proveer MATE con tales características. La experimentación, confirma la viabilidad de las propuestas.In the last years, computing performance demand has been in increase specially in the scientific field that has to solve complex problems. In general the data set size and the complexity of the operations over them require the use of very powerful systems. Thus, the increasing necessity for high performance systems/computing has been directing the attention of the scientific field towards the parallel/distributed paradigm. The optimization process, so-called tuning process, is the process followed in order to adapt and improve the behaviour of the applications by modifying their critical parameters. It includes several and successive phases. Firstly, during a monitoring phase the information about the behaviour of the application is captured. Next, the information is analyzed, by looking for bottlenecks, deducing their causes and trying to determine the adequate actions to eliminate them. Finally, appropriate changes have to be applied to the code to solve the problems and improve the performance. Fortunately, through the years different approaches and tools have been developed with the aim of helping the user during some of the optimization phases (monitoring, analysis or tuning phases). One of the available tools is MATE (Monitoring, Analysis and Tuning Environment), which is an automatic and dynamic tuning environment for parallel applications. MATE works in three continuous and iterative phases in order to adapt the deployment of the application according to the current state of the execution environment. MATE includes the knowledge to tune performance problems in pieces of software called ''tunlets'. Each tunlet includes the logic to collect behavioural information, analyze it on the fly and decide what the required tuning actions are. The objective of this work is to extend the usability of MATE. Our work covers two different aspects of MATE: - the improvement of the performance reached by the centralized analysis executed by MATE, due to it turns in a bottleneck as the size of the application increases. Thus, we provide an alternative to make MATE scalable. - the increase in the user-friendliness of MATE in order to facilitate the inclusion of new performance knowledge in it. Thus, we make MATE transparent for the users. According to the first aspect, we propose a novel approach to execute the analysis process, called Distributed-Hierarchical Collecting-Preprocessing Approach. This approach is based on the distributed collection of events which alleviates the centralized old-fashion in which collection was done, and in the preprocessing of cumulative or comparative operations as possible. Thus, the Global Analyzer receives just the necessary information condensed in a unique message from each Collector-Preprocessor, which considerably reduces the overload of Global Analyzer. In this way, MATE is provided with scalability properties. According to the second aspect, we provide a methodology, including a designed language and a developed translator to automatically insert tunlets (knowledge) in MATE. When some problem has to be tuned in a parallel application the user has to develop the corresponding tunlet. By using our methodology, the user is exempted from being involved in implementation details of MATE. Thus, by defining a set of abstractions about the application and the performance model, such abstractions can be formalized in a tunlet specification using the provided language. Such specification will be automatically translated in a tunlet ready to be used in MATE. Both scalability and transparency of MATE are qualities necessary to make MATE a more useful and user-friendly tool. The proposals and developments presented attempt to provide MATE with such characteristics. Experiments showed the viability of the proposals

    Environment for the Automatic Development and Tuning of Parallel Genetic Algorithms

    Get PDF
    The use of high performance computing has been gaining more and more followers in the different branches of Science and Engineering given the potential offered to deal with complex and big problems, and the increasing economic facilities to configure some kind of parallel machine. However, the parallel programming paradigm involves additional aspects to the merely functional which could provoke different kinds of bottlenecks in the performance of the applications. Such difficulties may represent critical obstacles specially for the non-expert users. In this paper we present an environment to provide general support for the automatic development and tuning of parallel applications. The environment provides an interface to guide the user in the specification of the problem and the solution, which makes transparent the process of code generation and instrumentation. Because the parallelization of any problem/solution is hard to generalize, the environment tackles different classes of problems. In this article, we introduce the class of Parallel Genetic Algorithms.Sociedad Argentina de Informática e Investigación Operativ

    Uncertainty Reduction Method Based on Statistics and Parallel Evolutionary Algorithms

    Get PDF
    In many scientific areas, the use of models to represent physical systems has become a common strategy. These models receive some input parameters representing some particular conditions and they provide an output representing the evolution of the system. Usually, these models are integrated into simulation tools that can be executed on a computational system. A particular case where models are very useful is the prediction of Forest Fire propagation. Therefore, the use of models is very relevant to estimate fire risk and to predict fire behaviour. However, in many cases the models present a series of limitations. Such restrictions are due to the need for a large number of input parameters and, usually, such parameters present some uncertainty due to the impossibility of measuring all of them in real time. In consequence, they have to be estimated from indirect measurements. To overcome this drawback and improve the quality of the prediction, in this work we propose a method that combines Statistical Analysis and Parallel Evolutionary Algorithms.Sociedad Argentina de Informática e Investigación Operativ

    Utilización de encuestas para el seguimiento y diagnóstico continuo

    Get PDF
    El proceso o sistema de evaluación, entendido como un proceso formativo de mejora continua, ha de contemplar distintos tipos de evaluación (autoevaluación, coevaluación y heteroevaluación), tanto formativa como sumativa. A su vez, la implementación de metodologías mixtas que combinan actividades síncronas y asíncronas, y el uso de modelos de aula invertida, requieren que el docente tenga un seguimiento permanente del grado de avance de los alumnos, a fin de asistir, orientar, y/o revisar los saberes relacionados con cada actividad o tema propuesto. En este artículo se presenta una experiencia implementada en el marco de la carrera de Ingeniería en Sistemas de Información, mediante el uso de encuestas de Moodle como una herramienta para el seguimiento en cuanto al nivel de comprensión y maduración de los diferentes temas.XI Workshop Innovación en Educación en Informática (WIEI)Red de Universidades con Carreras en Informátic

    A methodology for transparent knowledge specification in a dynamic tuning environment

    Get PDF
    The increasing use of parallel/distributed applications demands a continuous support to take significant advantages from parallel power. This includes the evolution of performance analysis and tuning tools which automatically allows for obtaining a better behavior of the applications. Different approaches and tools have been proposed and they are continuously evolving to cover the requirements and expectations of users. One such tool is MATE (Monitoring Analysis and Tuning Environment), which provides automatic and dynamic tuning for parallel/distributed applications. The knowledge used by MATE to analyze and take decisions is based on performance models which include a set of performance parameters and a set of mathematical expressions modeling the solution of the performance problem. These elements are used by the tuning environment to conduct the monitoring and analysis steps, respectively. The tuning phase depends on the results of the performance analysis. This paper presents a methodology to specify performance models. Each performance model specification can be automatically and transparently translated into a piece of software code encapsulating the knowledge to be straightforwardly included in MATE. Applying this methodology, the user does not have to be involved in the implementation details of MATE, which makes the usage of the tool more transparent.Fil: Caymes Scutari, Paola Guadalupe. Universidad Tecnológica Nacional. Facultad Regional de Mendoza; Argentina. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Mendoza; ArgentinaFil: Morajko, A.. Universitat Autònoma de Barcelona; EspañaFil: Margalef, T.. Universitat Autònoma de Barcelona; EspañaFil: Luque, E.. Universitat Autònoma de Barcelona; Españ

    Diseño de metaheurísticas paralelas con el paradigma novelty search para la reducción de incertidumbre en la predicción de fenómenos de propagación

    Get PDF
    Los incendios forestales son un fenómeno ambiental multicausal de gran prevalencia. El impacto de este fenómeno incluye pérdidas humanas, daños ambientales y económicos. Para mitigar estos daños, existen sistemas de simulación computacionales que predicen el comportamiento del fuego en base a un conjunto de parámetros de entrada o escenario (velocidad, dirección del viento; temperatura; etc.). Sin embargo, los resultados de una simulación suelen tener un alto grado de error por la incertidumbre en los valores de algunas variables, por no ser conocidos o porque su medición puede ser imprecisa o errónea. Por este motivo se han desarrollado métodos que combinan resultados de un conjunto de simulaciones sobre distintos escenarios, para detectar tendencias y así reducir dicha incertidumbre. Dos propuestas recientes, ESSIM-EA y ESSIM-DE, utilizan algoritmos evolutivos paralelos para orientar el espacio de escenarios a considerar, logrando mejoras en la calidad predictiva. Estos enfoques están guiados por una función objetivo que recompensa el avance hacia una solución. En problemas complejos, dicha función objetivo no siempre es un indicador directo de la calidad de las soluciones. En trabajos previos se han encontrado limitaciones como convergencia prematura, y se han requerido acciones de calibración y sintonización para incorporar soluciones más diversas al proceso de predicción. Para superar estas limitaciones, en este trabajo proponemos aplicar el paradigma Novelty Search (búsqueda basada en novedad), que reemplaza la función objetivo por una medida de la novedad de las soluciones encontradas, para generar continuamente soluciones con comportamientos diferentes entre sí. Este enfoque logra evitar óptimos locales y permitiría encontrar soluciones útiles que serían difíciles de hallar por otros algoritmos. Al igual que los métodos existentes, esta propuesta también puede aplicarse a otros modelos de propagación (inundaciones, avalanchas o corrimientos de suelo).Red de Universidades con Carreras en Informátic

    Evolutionary-statistical system for uncertainty reduction problems in wildfires

    Get PDF
    Fire modelling is used by engineers and scientists to understand and to predict possible fire behaviour. Empirical, semi-empirical, and physical models have been developed to predict wildfire behaviour. Any of these can be used to develop simulators and tools for preventing and fighting wildfires. However, in many cases the models present a series of limitations related to the need for a large number of input parameters. Moreover, such parameters often have some degree of uncertainty due to the impossibility of getting all of them in real time. Consequently, these values have to be estimated from indirect measurements, which negatively impacts on the output of the model. In this paper we show a method which takes advantage of the computational power provided by High Performance Computing to improve the quality of the output of the model. This method combines Statistical Analysis with Parallel Evolutionary Algorithms. Besides, we compare this method with a previous version which did not use evolutionary algorithms.Eje: Workshop Procesamiento distribuido y paralelo (WPDP)Red de Universidades con Carreras en Informática (RedUNCI

    Sintonización de un método de reducción de Incertidumbre: un proceso de medición-mejora para incrementar la eficiencia

    Get PDF
    La reducción de incertidumbre constituye un proceso complejo orientado a contrarrestar o paliar los efectos negativos que ocasiona la imprecisión en los datos de entrada de un programa o en los cálculos que se realiza con ellos. ESS (Evolutionary Statistical System) constituye un método de reducción de incertidumbre en el proceso de predicción de fenómenos de propagación, y su funcionamiento tiene tres pilares como fundamento: un algoritmo evolutivo para guiar la búsqueda, la estadística para determinar la tendencia, y el paralelismo para potenciar la cantidad de procesamiento computacional que debe realizarse. Si bien ESS obtiene predicciones suficientemente acertadas, en este proyecto se propone incorporarle capacidades para la sintonización dinámica y automática. Ello significa que debe desarrollarse un modelo de medición-mejora, con la finalidad de detectar las situaciones de sobrecarga computacional que se susciten durante la ejecución, para ajustar y/o adecuar el comportamiento dinámico de la aplicación y así lograr una ejecución globalmente más eficiente y precisa.Eje: Procesamiento distribuido y paralelo.Red de Universidades con Carreras en Informátic

    Parameter Tuning of a Parallel Hierarchical Island Based Model

    Get PDF
    One of the major drawbacks of using Evolutionary Algo- rithms is the determination of the input parameters, since they have an important in uence in the e ectiveness of the search. When using Par- allel Evolutionary Algorithms, such drawbacks are magni ed, since they incorporates new parameters needed to con gure the inherent charac- teristics of the parallel model. Achieving an adequate con guration can mean an optimization problem itself. This research group has developed a parallel distributed model characterized by a hierarchy of processes com- munication organized in islands that cooperate in the search process. In this work we present a study of calibration for some input parameters that determines good results quality, with the aim of tuning them taking into account di erent con gurations applied globally to the model, or locally to each island.Eje: XIV Workshop de Procesamiento Distribuido y ParaleloRed de Universidades con Carreras de Informática (RedUNCI

    IQR: una medida estadística como modelo para la sintonización computacional

    Get PDF
    El Rango Intercuartil (o métrica IQR) es una medida estadística que cuantifica la dispersión de la muestra considerada, es decir, la variabilidad de la distribución de los elementos muestrales en base a algún parámetro de interés. En este proyecto, centrado en métodos que como muestra del espacio de búsqueda consideran poblaciones de individuos (muestra de elementos candidatos) se propone la utilización del rango intercuartil de los valores de aptitud de los individuos como un indicador de la tendencia a estancarse que tiene el algoritmo. El caso de estudio se refiere a la predicción de incendios forestales. Por lo tanto, la función de aptitud cuantifica el grado de coincidencia entre la predicción arrojada por cierto individuo y el incendio real. El IQR actuaría como un indicador de estancamiento y/o convergencia prematura y sería de utilidad para tomar decisiones sobre cuándo la predicción alcanzada es suficientemente buena, o bien ha alcanzado un cierto tope de calidad que no podrá mejorarse, y por consiguiente sea recomendable dar paso a una nueva población y una nueva generación. En resumen, se propone un modelo basado en el IQR para sintonizar de forma automática y dinámica el parámetro que regula la cantidad de generaciones del proceso evolutivo, a fin de evitar estancamiento y convergencia prematura.Eje: Procesamiento Distribuido y ParaleloRed de Universidades con Carreras en Informátic
    corecore